In a semiconductor fabrication factory, various fabrication tools are used to process substrates for a particular purpose such as photolithography, chemical-mechanical planarization (CMP), chemical vapor deposition or diffusion. In a typical configuration, fabrication tools are grouped together and loosely controlled by a controller. The controller usually communicates with either an individual tool or a group of tools using an interface provided by industrial standards such as Semiconductor Equipment and Materials International (SEMI) standards.
The SEMI standards, which cover equipment automation, are widely applied to semiconductor fabrication systems. However, the SEMI standards do not provide a context for implementation, and thus, each knowledgeable engineer may come up with a different implementation conforming to the SEMI standards.
In particular, SEMI E30, Generic Model for Communications and Control of Manufacturing Equipment (GEM), defines the behavior of manufacturing equipment. SEMI E40, Standard for Processing Management, also referred to as the Process Job standard, defines material processing in relation to the behavior of manufacturing equipment. Under SEMI E40, a process job specifies a process to be executed for a particular set of substrates. Process jobs are queued and then set to an execution state. This execution state may be one of the following states: setup, wait, process, complete, stop, pause and abort. However, SEMI E40, as well as other SEMI standards, is silent regarding the order in which process jobs should be executed in a fabrication system. In the current implementation of SEMI E40, the order in which process jobs should be initiated is determined by the GEM Process (GP) software, and a real-time controller does not change the order. As a result, process jobs are executed on a first-come-first-served basis, and thus, a new urgent process job should wait to be executed until the preceding process jobs are finished.